1. Field of the Invention
The present invention relates generally to a packet communication apparatus and method in a mobile communication system, and in particular, to an apparatus and method for improving turbo code performance.
2. Description of the Related Art
Mobile communication systems are evolving toward high-speed, high-quality wireless data packet communication systems that can provide data service and multimedia service beyond voice-oriented service. The 3rd Generation Partnership Project (3GPP) and 3GPP2 standardization of High Speed Downlink Packet Access (HSDPA) and 1xEvolution in Data and Voice (1xEV-DV) are major examples of efforts expended to find a solution to high-speed, high-quality wireless data packet transmission service at or above 2 Mbps in 3G mobile communication systems.
Obstacles to high-speed, high-quality data service in wireless communications are caused mainly by the wireless channel environment. The wireless channel environment frequently changes due to fading-caused power change, shadowing, Doppler effects arising from the terminal's mobility and frequency mobile velocity changes, and interference from other users and multipath signals. Therefore, the provisioning of high-speed wireless data packet service requires advanced technology that increases adaptability to the channel changes in addition to existing technologies used for 2G or 3G mobile communication systems. While fast power control increases the adaptability to channel changes in the legacy systems, the 3GPP and 3GPP2, which are working on the standardization of a high-speed packet transmission system, commonly address Adaptive Modulation and Coding (AMC) and Hybrid Automatic Repeat Request (HARQ) schemes.
In AMC, a modulation scheme and a coding rate for a channel encoder are selected adaptively according to channel environment. Typically, a Mobile Station (MS) measures the Signal-to-Noise Ratio (SNR) of the downlink and feeds back the SNR measurement to a Base Station (BS). The BS then estimates the downlink channel condition based on the feedback information and selects an appropriate modulation scheme and coding rate according to the estimation.
HARQ is a retransmission technique for, when an initially transmitted packet has errors, retransmitting the packet. HARQ schemes are categorized into Chase Combining (CC), Full Incremental Redundancy (FIR), and Partial Incremental Redundancy (PIR). CC simply retransmits the same initial transmission packet, while FIR retransmits a packet with only redundancy bits generated from a channel encoder, instead of the same initial transmission packet. In PIR, a retransmission packet has information bits and new redundancy bits.
While the AMC and HARQ schemes are mutually independent in increasing adaptability to the changes in the uplink and downlink, their combination can improve system performance considerably. That is, a transmitter selects a modulation scheme and a coding rate suitable for the downlink channel condition by AMC and transmits a data packet using the modulation scheme and coding rate. When a receiver fails to decode the transmitted data packet, it requests a retransmission of the data packet. The BS then retransmits a predetermined data packet according to a predetermined HARQ scheme.
At present, 3 G communication systems (e.g. 1xEV-DV and HSDPA) and 4 G communication systems (e.g. Broadband Wireless Access (BWA)) employ a turbo encoder for transmission and reception of high-speed packet data.
FIG. 1 illustrates the structure of a typical turbo encoder.
Referring to FIG. 1, the turbo encoder includes a first constituent encoder 101 for encoding an input information bit stream xk, an internal interleaver 100 for interleaving the input information bit stream xk, and a second constituent encoder 102 for encoding an interleaved information bit stream x′k received from the interleaver 100. The turbo encoder is additionally provided with an output line via which the input information bit stream xk passes without encoding. The first and second constituent encoders 101 and 102 can be Recursive Systematic Convolutional (RSC) encoders or Non-Recursive Systematic Convolutional (NSC) encoders. The configuration of these constituent encoders can be changed according to coding rate (R), constraint length (k) and generator polynomial. The interleaver 100 permutes the sequence of the input information bit stream, thus decreasing the correlation between bits in the information bit stream. Elements denoted with D in the constituent encoders represent delay blocks.
FIG. 2 is a block diagram of a transmitter in a communication system using HARQ.
Referring to FIG. 2, this communication system supports both AMC and HARQ schemes, and the transmitter includes a Cyclic Redundancy Check (CRC) adder 201, a turbo encoder 203, and an HARQ processor 205.
In operation, the CRC adder 201 calculates a CRC code for an input information bit stream of a predetermined size and adds the CRC code to the end of the information bit stream. The turbo encoder 203 encodes the information bit stream received from the CRC adder 201 at a predetermined coding rate. The HARQ processor 205 is a block for supporting AMC and HARQ. It generates a packet at a corresponding coding rate by rate-matching the coded bit stream received from the turbo encoder 203 through repetition or puncturing. This packet is transmitted through an antenna, after interleaving, modulation, spreading, and Radio Frequency (RF) processing.
The HARQ processor 205 includes a puncturer (not shown) for matching the number of the coded bits received from the turbo encoder 203 to that of bits transmittable on a physical channel. The puncturer matches the size of the channel-coded bit stream to the size requirement for the physical channel, irrespective of AMC and HARQ. Accordingly, the coding rate of the packet generated from the transmitter illustrated in FIG. 2 varies and it is called an “effective coding rate”.
FIG. 3 is a graph illustrating BS power requirements with respect to effective coding rates, for a Block Error Rate (BLER) of about 10% in an HSDPA communication system. Here, horizontal line index is lor/loc wherein for is BS total power spectral density and loc is white Gaussian noise density.
Referring to FIG. 3, with respect to the origin, the innermost curve denotes an effective coding rate of 0.75 (7/9−), the middle curve denotes an effective coding rate of 0.80 (7/9+), and the outermost curve denotes an effective coding rate of 0.77 (7/9). In general, as the number of punctured bits increases, the effective coding rate and the BLER increase. In other words, required BS power increases. However, the graph illustrated in FIG. 3 reveals unexpected results. In a comparison between the effective coding rates, 0.8 and 0.77, a general expectation is that more transmit power is required for the effective coding rate 0.8 at the same BLER. However, in fact, more transmit power is required for the effective coding rate 0.77. This result is attributed to the nature of the turbo encoder.
FIGS. 4A and 4B illustrate performance degradation caused by an identical periodicity between the turbo encoder and the puncturer.
When the turbo encoder illustrated in FIG. 1 has a coding rate of 1/3, the constituent encoders (convolutional encoders) have an output period of 7. The output period is determined by the constraint length k and 2k−1=7 when k is 3. That is, a first parity sequence (the output of the first constituent encoder) and a second parity sequence (the output of the second constituent encoder) in the turbo encoder are periodic binary sequences which are correlated every seven bits.
As illustrated in FIGS. 4A and 4B, if the puncturer of the HARQ processor 205 has a puncturing period of 7, puncturing takes place at the same bit positions and the remaining bits reside at the same bit positions. In this way, when bits output from a constituent encoder are grouped by sevens and bits are punctured at the same bit positions, turbo code performance is decreased. As illustrated in FIG. 3, this phenomenon appears for a particular effective coding rate. Accordingly, there exists a need for adjusting a puncturing period for a particular effective coding rate causing the degradation of turbo code performance.